package cn.iocoder.yudao.module.ao.controller.admin.schedule.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@Schema(description = "管理后台 - 课程安排冲突检查请求 VO")
@Data
public class ScheduleConflictCheckReqVO {

    @Schema(description = "排除的课程ID（编辑时排除自己）", example = "1024")
    private Long excludeId;

    @Schema(description = "上课地点", requiredMode = Schema.RequiredMode.REQUIRED, example = "教学楼A-101")
    @NotBlank(message = "上课地点不能为空")
    private String location;

    @Schema(description = "星期几(1-7)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "星期几不能为空")
    private Integer dayOfWeek;

    @Schema(description = "时间段(1-12)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "时间段不能为空")
    private Integer timeSlot;

    @Schema(description = "周次", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "周次不能为空")
    private Integer weekNumber;

}
